background
背景(background)
每一个盒子元素都是有图层组成,前景包含文本图片边框,元素的背景层可以使用颜色填充,背景图片层在元素的背景层之上。简单的来说在css model中我们用一个图层的概念来理解背景。文本(图片或边框)– 背景颜色 – 背景图片
背景属性
background-color
背景颜色
没什么说的。只需要思考一个问题,为什么不直接background:red
而要 background-color:red
background-image
背景图片
和上边的问题一致。
background-repeat
背景重复
控制背景重复的属性有四个值。repeat(默认) 、repeat-x、repeat-y、no-repeat
默认重复,x方向重复,y方向重复,不重复。但是在使用的时候可能会碰到一些头疼的情况。比如容器尺寸和背景图片的个数恰好会让边界的背景显示的不全。CSS3提供了另外的两个属性round
、space
- round:确保图片不被剪切,调整图片的大小适应背景区域。
- space:确保图片不被剪切,添加空白来使用背景区域。
background-size
背景尺寸
CSS3规定的属性,用来控制背景图片的尺寸。
1 | <style> |
- cover:拉伸,完全填满背景区,保持宽高比。
- contain:缩放,恰好适应背景区,保持宽高比。
- 50%:缩放,填充一半,保持宽高比。(给两个就不会保持了)
- 500px 300px:宽度500px,高度300px。
background-position
背景位置
控制背景图片的位置,css中提供了top、left、right、bottom、center属性,当然也可以使用px去调整。雪碧图运用。
可以去组合
example
1 | /* 需要注意的是 top right与right top 是没有区别的 */ |
background-attachment
背景粘附
默认属性是scroll,即背景图片不会随着元素滚动。设置成fixed,背景图片将不会随着页面滚动。
tip
:一般用来设置水印,不随着元素的滚动而滚动。
background
简写
1 | <style> |
tip
:background可以设置多个背景图片以逗号分割。
背景渐变
渐变就是在一定的范围内让颜色自然的过渡。以前是不支持的所以这个是CSS3中的属性。
分为两种一种是线性渐变(linear-gradient),一种是放射性渐变(radial-gradient)。
线性渐变
线性渐变从元素的一端延伸到另外一端
example
1 | <style> |
tip
:可以看到在bg5中需要加-webkit去兼容要不然会不起作用,在很多css3的属性中需要去声明,谷歌(webkit),火狐(moz),opera(o),IE比较特殊(ms)低版本的IE9(包括9)使用。
1 | body{ |
渐变色还有很多不一样的用法有兴趣可以自己去尝试。
放射性渐变
放射听到这个词就应该知道的是发散状态,区别很显然。
example
1 | <style> |